1. Field of the Invention
The present invention pertains to communications systems, and particularly to communications systems which employ ATM technology.
2. Related Art and other Considerations
Asynchronous Transfer Mode (ATM) is becoming increasingly used in communication networks. ATM is a packet-oriented transfer mode which uses asynchronous time division multiplexing techniques. Packets are called cells and have a fixed size.
As shown in FIG. 1, an ATM cell consists of 53 octets, five of which form a header and forty eight of which constitute a xe2x80x9cpayloadxe2x80x9d or information portion of the cell. The header of the ATM cell includes two quantities which are used to identify a connection in an ATM network over which the cell is to travel, particularly the VPI (Virtual Path Identifier) and VCI (Virtual Channel Identifier). In general, the virtual path is a principal path defined between two switching nodes of the network; the virtual channel is one specific connection on the respective principal path.
Between termination points of an ATM network a plurality of nodes are typically situated, such as switching nodes having ports which are connected together by physical transmission paths or links. The switching nodes each typically have several functional parts, a primary of which is a switch core. The switch core essentially internal to the switch core are selectively controlled so that particular ports of the switch are connected together to allow a cells ultimately to travel from an ingress side of the switch to an egress side of the switch.
A protocol reference model has been developed for illustrating layering of ATM. The protocol reference model layers include (from lower to higher layers) a physical layer (including both a physical medium sublayer and a transmission convergence sublayer), an ATM layer, and an ATM adaptation layer (AAL), and higher layers. The basic purpose of the AAL layer is to isolate the higher layers from specific characteristics of tile ATM layer by mapping the higher-layer protocol data units (PDU) into the information field of the ATM cell and vise versa. There are several differing AAL types or categories, including AAL0, AAL1, AAL2, AAL3/4, and AAL5.
AAL2 is a standard defined by ITU recommendation I.363.2. An AAL2 packet is shown in FIG. 2 as comprising a three octet packet header, as well as a packet payload, The AAL2 packet header includes an eight bit channel identifier (CID), a six bit length indicator (LI), a five bit User-to-User indicator (UUI), and five bits of header error control (HEC). The AAL2 packet payload, which carries user data, can vary from one to forty-five octets
FIG. 3 shows how plural AAL2 packets can be inserted into a standard ATM cell. In particular, FIG. 3 shows a first ATM cell 201 and a second ATM cell 202. Each ATM cell 20 has a header 22 (e.g., cell 201 has header 221 and cell 202 has header 222). The payload of the ATM cells 20 begin with a start field 24 (e.g., cell 201 has start field 241 and cell 202 has start field 242). After each start field 24, the ATM cell payload contains AAL2 packets. For example, the payload of ATM cell 201 contains AAL2 packets 261 and 262 in their entirety, as well as a portion of AAL2 packet 263. The payload of c ell 202 contains the rest of AAL2 packet 263, and AAL2 packets 264 and 265 in their entirety. In addition, the payload of cell 202 has padding 28.
The start field 24, shown in FIG. 3A, facilitates one AAL2 packet bridging two ATM cells. Start field 24 includes a six bit offset field (OSF), a one bit sequence number (SN), and one parity bit (P). The six bit offset field (OSF) contains a value, represented by offset displacement 29 in FIG. 3, indicative of the octet in the payload whereat the first full AAL2 packet begins. For ATM cell 221, the value of the offset field (OSF) is one, since AAL2 packet starts just after start field 241. For ATM cell 222, the value of the offset field (OSF) is the sum of one (in view of start field 241) and the number of octets of AAL2 packet 263 protruding into cell 222.
AAL2 advantageously allows multiplexing of data from many users within a single ATM VCC. In such multiplexing scheme, each user""s data is carried in a separate AAL2 packet, but AAL2 packets of differing users are carried in the same ATM cells or cells borne on the same ATM VC. Thus, assuming each user has a different channel identifier (CID) value, as many as 248 user channels can be multiplexed onto one ATM VC. AAL2 thus allows more efficient utilization of low speed links than standard ATM while still maintaining low delay properties.
A problem with using AAL2 arises when terminating AAL2 channels at different nodes or different addresses in the same node. Since the individual AAL2 channels may be multiplexed into one ATM-VCC, it is not possible to direct the individual AAL2 channels (e.g., the AAL2 packets on which the channel data is carried) to different destinations using conventional ATM switches.
One approach for switching AAL2 packets is set forth by Mauger and Rosenberg, xe2x80x9cQoS Guarantees for Multimedia Services on TDMA-Based Satellite Networkxe2x80x9d, IEEE Communications Magazine July 1997). In that approach, fixed-cell ATM switches work in conjunction with separate variable-cell ATM switches for handling AAL2 packets.
Within an ATM node, a cell handling unit (CHU) receives incoming ATM cells from an ATM switch and provides outgoing ATM cells back to the ATM switch. Some of the incoming ATM cells can be of a first type AAL protocol (AAL2 protocol), while others of the incoming ATM cells are of a second type AAL protocol. The cell handling unit includes a demultiplexer function which demultiplexes an ATM cell with AAL2 protocol into outgoing ATM cells of the second type AAL protocol; as well as a multiplexer function which multiplexes ATM cells of the second type AAL protocol into an outgoing ATM cell with AAL2 protocol. In generating an outgoing ATM cell, a new ATM parameter (e.g., new VCI value) must be generated for the cell header.
The present invention provides a combined or consolidated table from which ATM parameters for use in headers of outgoing ATM cells can be determined. The table is consolidated in the sense that the table is structured and formatted so that it can be utilized for both incoming ATM cells with AAL2 protocol and ATM cells of the second type AAL protocol. The second type AAL protocol is preferably AAL2 prime, which requires that AAL2 packets carried in the ATM cell payload be whole packets and that the ATM payload not have an AAL2-type start field.
The combined table is structured to have plural intervals, including a first interval for AAL2 protocol connections and plural other intervals for the second type AAL protocol connections. Each interval is a set of rows, the rows also being referred to as subintervals. Each row for the AAL2 protocol interval (i.e., the first interval) is associated with (1) a unique incoming VCI value for its corresponding AAL2 protocol AAL connection, (2) an output link value; (3) an outgoing VCI value; and (4) an offset value. The offset value points to the one of the plural intervals for the second AAL type connection.
The combined table further has subintervals or rows for each of the plural intervals for the second AAL type connections. Each of the rows for the second AAL type connections has (1) an incoming VCI value; (2) a channel identifier (CID) for a particular one of the AAL2 connections; (3) an output link value; and (4) an ATM parameter for use in an ATM header of an outgoing ATM cell.
In a multiplexing operation, an incoming VCI value and incoming channel identifier (CID) value are ascertained from an incoming ATM cell having an AAL2 protocol. The incoming VCI value is used to locate an appropriate row in the AAL2 interval or portion of the table. From the appropriate AAL2 row an appropriate offset value is obtained. The appropriate offset value is then used to locate an appropriate one of the plural intervals for second type AAL protocol connections. Within the appropriate second AAL type protocol interval, an appropriate row of the interval is located by matching the incoming CID value with the CID values of the rows of the interval. From the thusly-determined appropriate row, an ATM parameter (e.g., outgoing VCI value) is obtained for use in an ATM header of the outgoing ATM cell.
In a demultiplexing operation, an incoming VCI value is ascertained from an incoming ATM cell. The plural intervals for the second type AAL protocol connections are searched to find and an appropriate row thereof which has its associated incoming VCI value matching the incoming VCI value of the incoming ATM cell. From the appropriate row an appropriate output link value is obtained. Then, the AAL2 interval of the table is searched to find an appropriate row thereof having an associated output link value which matches the appropriate output link value obtained from the appropriate row of the appropriate second type AAL protocol interval. From the appropriate row of the AAL2 portion of the table is obtained the associated ATM parameter (e.g., VCI value) for use in the header of the outgoing ATM cell.